home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Adobe Graphics & Publishing SDK 1996 December
/
Adobe Graphics & Publishing SDK 1996 December.iso
/
mac
/
Illustrator 6.0 SDK r1 Mac
/
AI Plugin Interface
/
AIPathStyle.h
< prev
next >
Wrap
Text File
|
1995-12-21
|
3KB
|
144 lines
/**
AIPathStyle.h
Copyright (c) 1995 Adobe Systems Incorporated.
All Rights Reserved
Adobe Illustrator 6.0 Path Style Suite.
**/
#ifndef __AIPathStyle__
#define __AIPathStyle__
/*******************************************************************************
**
** Imports
**
**/
#include "AITypes.h"
#include "AIArt.h"
#include "AIColor.h"
#include "AIFixedMath.h"
#if Macintosh
#ifdef __cplusplus
extern "C" {
#endif
#if PRAGMA_ALIGN_SUPPORTED
#pragma options align=mac68k
#endif
#if PRAGMA_IMPORT_SUPPORTED
#pragma import on
#endif
#endif
/*******************************************************************************
**
** Constants
**
**/
#define kAIPathStyleSuite "AI Path Style Suite"
#define kAIPathStyleVersion 2
#define kMaxDashComponents 6 /* Maximum number of dash components */
typedef enum {
kButtCap = 0, /* Butt line caps */
kRoundCap, /* Round line caps */
kProjectingCap /* Projecting line caps */
} AILineCap;
typedef enum {
kMiterJoin = 0, /* Miter line joins */
kRoundJoin, /* Round line joins */
kBevelJoin /* Bevel line joins */
} AILineJoin;
#define kTooManyDashComponents 'DASH'
/*******************************************************************************
**
** Types
**
**/
typedef struct {
AIColor color; /* Fill color */
Boolean overprint; /* Overprint */
} AIFillStyle;
typedef struct {
short length; /* 0 if solid */
Fixed offset; /* Dash offset */
Fixed array[kMaxDashComponents]; /* Dash array */
} AIDashStyle;
typedef struct {
AIColor color; /* Stroke color */
Boolean overprint; /* Overprint - not meaningful if ColorTag is pattern */
Fixed width; /* Line width */
AIDashStyle dash; /* Stroke dash */
AILineCap cap; /* Line cap */
AILineJoin join; /* Line join */
Fixed miterLimit; /* Line miter limit */
} AIStrokeStyle;
typedef struct {
Boolean fillPaint; /* Whether or not to fill the path */
Boolean strokePaint; /* Whether or not to stroke the path */
AIFillStyle fill; /* Fill style, if fillPaint is true */
AIStrokeStyle stroke; /* Stroke style, if strokePaint is true */
Boolean clip; /* Whether or not to use this as a clipping path */
Boolean evenodd; /* Whether or not to use the even-odd rule to determine path insideness */
Fixed resolution; /* Path's resolution */
unsigned char note[256];
} AIPathStyle;
/*******************************************************************************
**
** Suite
**
**/
typedef struct {
MACPASCAL FXErr (*GetPathStyle) ( AIArtHandle path, AIPathStyle *style );
MACPASCAL FXErr (*SetPathStyle) ( AIArtHandle path, AIPathStyle *style );
MACPASCAL FXErr (*GetCurrentPathStyle) ( AIPathStyle *style );
} AIPathStyleSuite;
#if Macintosh
#if PRAGMA_IMPORT_SUPPORTED
#pragma import off
#endif
#if PRAGMA_ALIGN_SUPPORTED
#pragma options align=reset
#endif
#ifdef __cplusplus
}
#endif
#endif
#endif